import java.util.ArrayList;
import java.util.Scanner;


public class Hilo1 implements Runnable{
	private Monitor monitor;
	private ArrayList<String> lista;
	private String nombre;
	public Hilo1(Monitor monitor,String nombre,ArrayList<String> lista) {
		this.monitor = monitor;
		this.nombre = nombre;
		this.lista=lista;
	}
	@Override
	public void run() {
		this.leerMas();
	}
	/**
	 * metodo sincronizado con monitor para leer 
	 */
	public  void leerMas(){
		boolean salir = false;
		String temp ="";
		while(!salir){
			synchronized (monitor) {
				Scanner leer = new Scanner(System.in);
				if (monitor.getTurno() == 1) {
					System.out.print("Soy "+nombre+":Introduzca una palabra o 'fin' para terminar");
					temp = leer.next();
					monitor.setTurno(2);
					if(!temp.equalsIgnoreCase("fin"))
						lista.add(temp);
					else{
						salir=true;
						monitor.muereHilo();
					}
					
					try {
						Thread.sleep(20);
					} catch (InterruptedException e1) {
						System.out.println("No se puede dormir");
					}
				}
				
			}
		}
		
			
		
	}
	
}





